A large network such as Internet may be divided into multiple Autonomous Systems (ASs). Each autonomous system is considered as a self-managed network and is responsible only for managing routes in the autonomous system. For the Internet, route selection information in any two autonomous systems is not shared between each other.
The Border Gateway Protocol (BGP) is an inter-autonomous system dynamic route discovery protocol, and its basic function is to automatically exchange loop-free routing information between the autonomous systems. In contrast to protocols operating in autonomous systems, such as the Open Shortest Path First (OSFP) and the Routing Information Protocol (RIP), the BGP is an Edge Gateway Protocol (EGP). However, the OSPF and RIP are interior gateway protocols.
There are two types of BGP connections, i.e. the Internal BGP (IBGP) and the External BGP (EBGP). A BGP connection established in the same AS autonomous system is referred to as IBGP and a BGP connection established between different AS autonomous systems is referred to as EBGP.
Full-mesh connections are required for BGP peers operating in the same AS autonomous area because of constraints of functions and mechanisms of the protocol. In other words, an IBGP connection is required between any two routers operating BGP in the same AS. The IBGP connection is a TCP connection instead of a physical connection, and has relatively strict requirements with the complexity of a square of N. For example, in an autonomous system including N routers, N(N−1)/2 IBGP connections shall be established in the case of full-mesh connection. For this reason, a Router Reflector (RR) has been introduced in the autonomous system using the BGP protocol.